package com.yunhe.rentcars.pro.dao.permi;




import org.apache.ibatis.annotations.Param;
import com.yunhe.rentcars.pro.entity.permi.Permission;


import java.util.List;
import java.util.Map;

/**
 * Created by Administrator on 2017/10/19 0019.
 */
public interface PermissionDao {
    /**
     * 增
     * @param permission
     */
    void save(Permission permission);

    /**
     * 删
     * @param id
     */
    void delete(Long id);

    /**
     * 改
     * @param permission
     */
    void update(Permission permission);

    /**
     * 查单个权限
     * @param id
     * @return
     */
    Permission find(Long id);

    /**
     * 查所有权限
     * @return
     */
    List<Permission> findList();


    /**
     * 分页查询所有权限
     * @param offset
     * @param limit
     * @return
     */
    List<Permission> findPage(@Param("offset") Integer offset, @Param("limit")Integer limit);

    /**
     * 查询权限总数
     * @return
     */
    int count();
    /**
     * 权限单表查询
     * @param permission
     * @return
     */
    List<Permission> findPermisListByDan(Permission permission);


    /**
     * 权限、角色、用户多表查询
     * @param map
     * @return
     */
    List<Permission> findPermisListByDuo(Map map);
}
